#include <prism/backend/generation/llvm/llvm-main.hpp>
#include <atma/assert.hpp>
#include <prism/frontend/syntactical_analysis/parse.hpp>

using namespace prism;

std::string prism::decorated_type( sooty::const_parseme_ptr_ref N )
{
	switch (N->id)
	{
		case ID::pointer_type: return decorated_type(N->children[0]) + "*";
		case ID::int_type: return "i32";
		case ID::real_type: return "float";
		case ID::bool_type: return "i1";
		case ID::void_type: return "void";
	}
	
	ATMA_ASSERT(false);
	return std::string();
}